<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // 数组的声明方式

        // 数组的改变  数组的长度和数组的值可以随时被改变

        // 数组的遍历

        //    for   for in    for of 

        // 数组的方法

        //   push()   pop()   unshift()   shift()    splice()   sort()   revserse()

        //   includes()   indexOf()  join()  concat()  slice()

        // 数组的应用
        
        //    排序
        //      选择排序  
                for(var i = 0 ; i < arr.length - 1 ; i++) {
                    var min = i ;
                    // 与后面的所有值进行交换
                    for(var j = i + 1 ; j < arr.length ; j++) {
                        if(arr[min] > arr[j]) {
                            min = j ;
                        }
                    }
                    if(min !== i) {
                        var t = arr[min] ;
                        arr[min] = arr[i] ;
                        arr[i] = t ;
                    }
                }


        //      冒泡排序  --- 跟相邻的做比较
                for(var i = 0 ; i < arr.length - 1 ; i++) {
                    // 每相邻的两个值进行比较    -1最后一个值不用比较   -i 每一轮结束之后最后的值都是最大的
                    for(var j = 0 ; j < arr.length - 1 - i ; j++) {
                        if(arr[j] > arr[j + 1]) {
                            var t = arr[j] ;
                            arr[j] = arr[j + 1] ;
                            arr[j + 1] = t ;
                        }
                    }
                }

        //    去重
        //       把重复的删除  --- 拿第一个值与后面所有的值进行比较  ---- 数组的塌陷！！！！！
        //       把不重复的放入新数组  --- 判断新的数组中是否存在将要放进去的这个值 indexOf / includes

        //    统计
        //       重复的就删除   count = 1 ;  删除一个就统计一个
        //       把不重复的放入新数组   再拿新数组中的每个值与原数组中的每个值进行比较  count = 0 ;

        //    洗牌   随机找一个位置与当前位置进行交换

        // 数据类型：基本数据类型(栈内存) + 引用数据类型(堆内存)
        //     数组的深拷贝和浅拷贝
        //     函数的值传递和引用传递

        // 二维数组  

        // 动态生成表格

    </script>
    
</body>
</html>